Location-based online games for mobile devices and in-game advertising

ABSTRACT

Providing a location-based online game for a plurality of mobile devices, including: assigning a force field around a player corresponding to each mobile device of the plurality of mobile devices, wherein a radius of the force field is proportional to a score or experience point of the player in the online game; determining a location of said each mobile device; calculating colliding forces among the plurality of mobile devices and virtual environment created in the online game; and providing a forum to enable a battle among the plurality of mobile devices and the virtual environment which are calculated as being in the colliding forces.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation application of U.S. application Ser.No. 13/744,199 filed on Jan. 17, 2013, and now U.S. Pat. No. 8,678,931issued on Mar. 25, 2014, which claims the benefit of priority under 35U.S.C. §119(e) of U.S. Provisional Patent Application No. 61/587,602,filed Jan. 17, 2012, entitled “Location-Based Online Games for MobileDevices and In-Game Advertising.” The disclosure of the above-referencedapplication is incorporated herein by reference.

SUMMARY

The present invention provides for a location-based online game for aplurality of mobile devices.

In one implementation, a non-transitory computer-readable storage mediumstoring a computer program for a location-based online game for aplurality of mobile devices is disclosed. The program includingexecutable instructions that cause the computer to: assign a force fieldaround a player corresponding to each mobile device of the plurality ofmobile devices, wherein a radius of the force field is proportional to ascore or experience point of the player in the online game; determine alocation of said each mobile device; calculate colliding forces amongthe plurality of mobile devices and virtual environment created in theonline game; and provide a forum to enable a battle among the pluralityof mobile devices and the virtual environment which are calculated asbeing in the colliding forces.

In another implementation, a location-based online game system isdisclosed. The system includes: a processor configured to assign a forcefield around a player corresponding to each mobile device of theplurality of mobile devices, the processor also configured to determinea location of said each mobile device, wherein a radius of the forcefield is proportional to a score or experience point of the player inthe online game; and a collision detector configured to calculatecolliding forces among the plurality of mobile devices and virtualenvironment created in the online game, the collision detector operatingin conjunction with the processor to provide a forum to enable a battleamong the plurality of mobile devices and the virtual environment whichare calculated as being in the colliding forces.

Other features and advantages of the present invention will become morereadily apparent to those of ordinary skill in the art after reviewingthe following detailed description and accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a functional block diagram of a location-based online gamesystem in accordance with one implementation of the present invention.

FIG. 2 shows one example of a PVP mode collision.

FIG. 3 shows one example of a PVE mode collision.

FIG. 4 shows one example of terrain building.

FIG. 5 shows one example of advertising on the preview map screen.

FIG. 6 shows one example of an instantiated advertiser's landmark assetin the game.

FIG. 7 is one example of a spawned event PVE monster and the collisionscenario.

FIG. 8 is one example of an event PVE monster in the game space.

FIG. 9 is a flow diagram illustrating a method of generating alocation-based online game for a plurality of mobile devices inaccordance in accordance with one implementation of the presentinvention.

FIG. 10A illustrates a representation of a computer system and a use.

FIG. 10B is a functional block diagram illustrating the computer systemhosting a location-based online game generator to define userinteraction scenarios for an online game for mobile devices illustratedin FIG. 9.

DETAILED DESCRIPTION

Certain implementations as described herein provide for location-basedonline games for mobile devices and in-game advertising. Someimplementations define user interaction scenarios for a 3-D online gamefor mobile devices that merge real and virtual space to create stronginteractions between players in the real world. Implementations alsogenerate 3-D game spaces on-the-fly that are different every time a userplays the game. Implementations also include in-game advertisingtechniques. After reading this description it will become apparent howto implement the invention in various implementations and applications.Although various implementations of the present invention will bedescribed herein, it is understood that these implementations arepresented by way of example only, and not limitation. As such, thisdetailed description of various implementations should not be construedto limit the scope or breadth of the present invention.

FIG. 1 is a functional block diagram of a location-based online gamesystem 100 in accordance with one implementation of the presentinvention. The system 100 comprises a game server 110, database 120, anda plurality of mobile clients 130. The server 110 includes a terrainbuilder 112, a collision detector 114, a push notification handler 116,and a network interface, and is responsible for detecting collisionsbetween players (represented by mobile clients 130) in the real world,generating the 3-D game world, initiating games and managing userdatabase 122. In one implementation, the server 110 uses the networkinterface 118 to call on HTTP Rest APIs and communicate with clientdevices and other web-based servers.

Collision Detector

In the game using this system 100, in one implementation, each playerhas the supernatural psychic force that spherically surrounds the playerand its radius is proportional to the player's score or experience pointin the game. Once a player creates an account in the game, the force ofthe player becomes detectable by other players and a mobile client 130starts uploading its GPS data to the game server 110. In oneimplementation, the force coexists in both real and virtual space butthe players cannot sense another player's force without a mobile deviceon which the game is installed.

For every pre-defined time interval, the game server 110 calculates allpairs of “colliding forces” through GPS coordinate distance calculations(e.g., by the collision detector 114). The server 110 then sendsnotification messages (e.g., by the push notification handler 116) tothe players whose forces are intersecting with others so that theplayers can realize the “colliding forces”.

There are two collision modes. One is the player-vs-player (PVP) modeand the other is player-vs-environment (PVE) mode. PVP mode is when onlythe players' forces are colliding. In this mode, the game would be afree-for-all competing mode. FIG. 2 shows one example of a PVP modecollision.

For the diversity of the game play, the game server 110 randomly spawnsvirtual characters or monsters on geo-points. As a virtual monster alsohas a psychic force, there could be the force field collisions betweenthe monster and players and it triggers a battle of the PVE mode, whichis a cooperating mode against a virtual monster. FIG. 3 shows oneexample of a PVE mode collision.

Terrain Builder

After the collision detection is complete, the server 110 generatesheight maps (e.g., the terrain builder 112) that clients 130 candownload for each collision pair. Initially, a rectangular target areathat includes all players' geo-locations is decided. The server 110 thencalculates a sampling rate of the raw earth elevation data set ingeographic information system (GIS) database 124, which is a highresolution digital topographic database of Earth because the size of the3D game map is fixed regardless of the actual size of the target areas.Therefore, the varying sampling rate implies that the smaller the targetarea is, the finer the details of the real terrain are preserved andvice versa. Next step is to sample the elevation data and mosaic them tobuild a 2-D array of the height map of the target area.

Morphological transforms such as smoothing, erosion and dilation areapplied on the 2-D array in order to make the generated terraincontinuous for the game. Finally, the post processing that modifies theheight map for the landmark objects, the road objects and the oceanobject is applied. FIG. 4 shows one example of terrain building.

Database

The user database 122 is a general database that manages the player'sinformation such as name, ID, geo location, force radius, log-in statusand so on. The GIS database 124 includes various kinds of geospatialdata such as Earth elevation, water-land mask, highway structure,geo-points and game assets of landmark buildings and so on. Some of themare public data such as Shuttle Radar Topography Mission (SRTM) andTiger DB, and some of them could be proprietary data sets from otherdata providers. If needed, it is also possible for the game provider ordeveloper to create his or her own geospatial database for the game.What database to adopt is dependent on the game that will use thissystem 100 and the system itself is totally separated from the decisionof the data sets.

Mobile Client

Mobile clients 130 are responsible for capturing GPS locations anduploading them in the background, handling collisions and gametriggering signals from the game server 110 and running the game 132.Any kind of games can be installed if the mobile device supportsrequired functions and the game 132 makes use of this system 100.

One useful feature in the mobile client is the vibration motor patterncontrol 134. It is possible for the game server 110 to categorizeplayers into a couple of characters based on their game play history andeach character has its own vibration pattern. The opponent's characterdata is embedded in the notification signal so that the client devicecan generate unique vibration pattern when it receives the pushnotification. It will help the receiver intuitively sense the battleevent and recognize his or her opponents with intriguing feedbacks.

In-Game Advertising

There are three different ways of advertising for the mobile games usingthis system 100: advertising on the preview map screen; advertiser'slandmarks in the game space; and advertising through PVE battles.

Advertising on the Preview Map Screen

This is a general advertising that is widely adopted now. Anadvertisement can be directly embedded on the top or bottom of thepreview map screen without blocking the map view and other controlbuttons. FIG. 5 shows one example of advertising on the preview mapscreen.

Advertiser's Landmarks in the Game Space (Selling Landmark Assets)

As the landmark buildings in the game space are visually distinctive andplay important roles during the battle, it is also possible to sell thelandmark itself to the clients. That is, the advertiser purchases theopportunity to promote the brand identity by exposing the landmarkobject they designed in the game space. The advertiser can design theirown landmark building they want to be instantiated in the game as wellas the list of actual geo-locations and the landmark DB in the gameserver is updated with those data. Once the battle is triggered, theadvertising landmark buildings can be instantiated if theirgeo-locations are included in the battle region. FIG. 6 shows oneexample of an instantiated advertiser's landmark asset in the game.

Advertising Through PVE Battles (Selling PVE Battles)

This is to sell the PVE battle events themselves to advertisers. Theclients have opportunities to design unique PVE monsters that canrepresent the company's identity. The clients also can choose thevirtual monster's spawning position (actual geo-point) and the time. Asthe PVE monster has a huge Force, a large number of players can sensethe monster and engage in the event battle, which means that thisadvertisement could be more efficient and impressive than other twoadvertisements. Once the client sets the time and location of the eventbattle, processes after that flow the same as the normal PVE battle.

Other than the time and location, the client can design unique rewardsfor the players who defeated the monster such as a trophy with thecompany's logo, the unique title for the players and so on. This kind ofreward has a prolonged effect because the reward is exposed to otherplayers during ordinary battles so that they also can recognize theadvertiser. FIG. 7 is one example of a spawned event PVE monster and thecollision scenario. FIG. 8 is one example of an event PVE monster in thegame space.

FIG. 9 is a flow diagram 900 illustrating a method of generating alocation-based online game for a plurality of mobile devices inaccordance with one implementation of the present invention. A forcefield around a player corresponding to each mobile device is assigned,at box 910. A radius of the force field is proportional to a score orexperience point of the player in the online game. A location of eachmobile device is then determined, at box 920. Colliding forces arecalculated, at box 930, among the plurality of mobile devices andvirtual environment created in the online game. Finally, at box 940, aforum is provided to enable a battle among the plurality of mobiledevices and the virtual environment which are calculated as being in thecolliding forces.

FIG. 10A illustrates a representation of a computer system 1000 and auser 1002. In one implementation, the user 1002 uses the computer system1000 to generate a location-based online game.

FIG. 10B is a functional block diagram illustrating the computer system1000 hosting a location-based online game generator 1090 to define userinteraction scenarios for an online game for mobile devices illustratedin FIG. 9. The controller 1010 is a programmable processor and controlsthe operation of the computer system 1000 and its components. Thecontroller 1010 loads instructions (e.g., in the form of a computerprogram) from the memory 1020 or an embedded controller memory (notshown) and executes these instructions to control the system.

Memory 1020 stores data temporarily for use by the other components ofthe computer system 1000. In one implementation, memory 1020 isimplemented as RAM. In another implementation, memory 1020 also includeslong-term or permanent memory, such as flash memory and/or ROM.

Storage 1030 stores data temporarily or long term for use by othercomponents of the computer system 1000, such as for storing data andprogram of the location-based online game generator 1090. Storage 1030is sometimes referred to as a computer-readable storage medium whichstores non-transitory data. In one implementation, storage 1030 is ahard disk drive.

In its execution, the location-based online game generator 1090 isloaded into the memory 1020 or storage 1030 as a software system.Alternatively, this service can be implemented as separate hardwarecomponents (e.g., field programmable gate array (FPGA)) in the computersystem 1000.

The media device 1040 receives removable media and reads and/or writesdata to the inserted media. In one implementation, for example, themedia device 1040 is an optical disc drive.

The user interface 1050 includes components for accepting user inputfrom the user of the computer system 1000 and presenting information tothe user. In one implementation, the user interface 1050 includes akeyboard, a mouse, audio speakers, and a display. The controller 1010uses input from the user to adjust the operation of the computer system1000.

The I/O interface 1060 includes one or more I/O ports to connect tocorresponding I/O devices, such as external storage or supplementaldevices (e.g., a printer or a PDA). In one implementation, the ports ofthe I/O interface 1060 include ports such as: USB ports, PCMCIA ports,serial ports, and/or parallel ports. In another implementation, the I/Ointerface 1060 includes a wireless interface for communication withexternal devices wirelessly.

The network interface 1070 includes a wired and/or wireless networkconnection, such as an RJ-45 or “Wi-Fi” interface (including, but notlimited to 302.11) supporting an Ethernet connection.

The computer system 1000 includes additional hardware and softwaretypical of computer systems (e.g., power, cooling, operating system),though these components are not specifically shown in FIG. 10B forsimplicity. In other implementations, different configurations of thecomputer system can be used (e.g., different bus or storageconfigurations or a multi-processor configuration).

The above description of the disclosed implementations is provided toenable any person skilled in the art to make or use the invention.Various modifications to these implementations will be readily apparentto those skilled in the art, and the generic principles described hereincan be applied to other implementations without departing from thespirit or scope of the invention. Accordingly, additionalimplementations and variations are also within the scope of theinvention. Further, it is to be understood that the description anddrawings presented herein are representative of the subject matter whichis broadly contemplated by the present invention. It is furtherunderstood that the scope of the present invention fully encompassesother implementations that may become obvious to those skilled in theart and that the scope of the present invention is accordingly limitedby nothing other than the appended claims.

The invention claimed is:
 1. A non-transitory computer-readable storagemedium storing a computer program for a location-based online game for aplurality of mobile devices, the program comprising executableinstructions that, which when executed by at least one processor, causea computer to: provide a virtual environment for the online game; assigna first virtual force field around a first player operating a firstmobile device, the first player associated with a first virtualcharacter in the virtual environment of the online game; assign a secondvirtual force field around a second player operating a second mobiledevice, the second player associated with a second virtual character inthe virtual environment of the online game; wherein, a radius of each ofthe first and second virtual force fields is proportional to a score orexperience point of the associated player in the online game; determinea first geographical location of the first mobile device by receivingfirst GPS data from the first mobile device; determine a secondgeographical location of the second mobile device by receiving secondGPS data from the second mobile device; determine if a collision eventhas occurred for the online game between the first mobile device and thesecond mobile device when the first virtual force field, based on thefirst geographical location, intersects the second virtual force field,based on the second geographical location; and in response todetermining the collision event, provide a forum to enable a battlebetween the first virtual character and the second virtual character inthe virtual environment of the online game, wherein the battle isprogrammed as an advertisement.
 2. The non-transitory computer-readablestorage medium of claim 1, wherein the online game includes theadvertisement.
 3. The non-transitory computer-readable storage medium ofclaim 1, wherein the advertisement includes at least one reward forwinning the battle.
 4. The non-transitory computer-readable storagemedium of claim 3, wherein the at least one reward includes a brandidentity of an advertiser of the advertisement.
 5. The non-transitorycomputer-readable storage medium of claim 1, wherein the advertisementincludes characters of the battle designed by an advertiser of theadvertisement.
 6. The non-transitory computer-readable storage medium ofclaim 5, wherein the characters include a player-vs-environment (PVE)monster which represent the advertiser.
 7. The non-transitorycomputer-readable storage medium of claim 6, wherein the advertiser isenabled to select a spawning position and time of the PVE monster in theonline game.
 8. A location-based online game system, comprising: aprocessor configured to: provide a virtual environment for the onlinegame; assign a first virtual force field around a first player operatinga first mobile device, the first player associated with a first virtualcharacter in the virtual environment of the online game; assign a secondvirtual force field around a second player operating a second mobiledevice, the second player associated with a second virtual character inthe virtual environment of the online game; wherein, a radius of each ofthe first and second virtual force fields is proportional to a score orexperience point of the associated player in the online game; determinea first geographical location of the first mobile device by receivingfirst GPS data from the first mobile device; and determine a secondgeographical location of the second mobile device by receiving secondGPS data from the second mobile device; and a collision detectorconfigured to: determine if a collision event has occurred for theonline game between the first mobile device and the second mobile devicewhen the first virtual force field, based on the first geographicallocation, intersects the second virtual force field, based on the secondgeographical location; and in response to determining the collisionevent has occurred, provide a forum to enable battle between the firstvirtual character and the second virtual character in the virtualenvironment of the online game, wherein the battle is programmed as anadvertisement.
 9. The system of claim 8, wherein the virtual environmentincludes a preview map.
 10. The system of claim 9, wherein the previewmap includes the advertisement.
 11. The system of claim 9, wherein thevirtual environment includes at least one landmark.
 12. The system ofclaim 11, wherein the at least one landmark includes a brand identity ofan advertiser of the advertisement.
 13. The system of claim 12, whereinthe brand identity is designed by the advertiser for the online game.14. The system of claim 8, wherein the online game includes theadvertisement.
 15. The system of claim 8, wherein the advertisementincludes at least one reward for winning the battle.
 16. The system ofclaim 8, wherein the at least one reward includes a brand identity of anadvertiser of the advertisement.
 17. The system of claim 8, wherein theadvertisement includes characters of the battle designed by anadvertiser of the advertisement.
 18. The system of claim 17, wherein thecharacters include a player-vs-environment (PVE) monster which representthe advertiser.
 19. The system of claim 18, wherein the advertiser isenabled to select a spawning position and time of the PVE monster in theonline game.